using System;
using System.Collections.Generic;
using ns26;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("UngoroPackOpeningSpell")]
	public class UngoroPackOpeningSpell : SuperSpell
	{
		public List<Entity> m_newCards => method_3<Class271<Entity>>("m_newCards")?.method_25();

		public List<int> m_fullEntityTaskIndices => method_3<Class270<int>>("m_fullEntityTaskIndices")?.method_25();

		public List<Transform> cardDestinations => method_3<Class271<Transform>>("cardDestinations")?.method_25();

		public Transform cardSpawningPosition => method_3<Transform>("cardSpawningPosition");

		public float m_CardFlyOutTime => method_2<float>("m_CardFlyOutTime");

		public float m_CardHangTime => method_2<float>("m_CardHangTime");

		public int previousLayer => method_2<int>("previousLayer");

		public UngoroPackOpeningSpell(IntPtr address, string className)
			: base(address, className)
		{
		}

		public UngoroPackOpeningSpell(IntPtr address)
			: this(address, "UngoroPackOpeningSpell")
		{
		}

		public new bool AddPowerTargets()
		{
			return method_11<bool>("AddPowerTargets", Array.Empty<object>());
		}

		public void FindNewCardsFullEntityTask()
		{
			method_8("FindNewCardsFullEntityTask");
		}

		public new void OnAction(SpellStateType prevStateType)
		{
			method_8("OnAction", prevStateType);
		}

		public void OnSpellEvent(string eventName, object eventData, object userData)
		{
			method_8("OnSpellEvent", eventName, eventData, userData);
		}

		public void PlayInnkeeperVO()
		{
			method_8("PlayInnkeeperVO");
		}
	}
}
